package com.gopay.common.constants;

import java.math.BigDecimal;

/**
 * 系统常量类
 * 
 * @Constants.java
 * @author GongZhong
 * @2012-12-25 下午04:30:05 www.gopay.com.cn Inc.All rights reserved.
 */
public class Constants {

    /**
     * 商户编号（如是国付宝自身平台发起则为GFB0000001）
     */
    // TODO 数据库定义的是9位，待确认
    public static final String GOPAY_SYS_MERID = "GFB0000001";
    /** 出款清算单位代码 （如是国付宝虚拟账户资金流转记录GFB） */
    public static final String GFB_BANK_CODE = "GFB";

    public static final String SIGN_API = "3";
    /** 加密方式：SHA */
    public static final String SIGN_SHA = "2";
    /** 加密方式：MD5 */
    public static final String SIGN_MD5 = "1";

    /** UTF-8编码 */
    public static final String ENCODE_UTF8 = "UTF-8";
    /** ISO8859-1编码 */
    public static final String ENCODE_ISO = "ISO8859-1";
    /** GBK编码 */
    public static final String ENCODE_GBK = "GBK";
    /** 编码类型：1 GBK */
    public static final String ENCODE_TYPE_1 = "1";
    /** 编码类型：2 UTF8 */
    public static final String ENCODE_TYPE_2 = "2";

    /** 网关通知类型：1 前台 */
    public static final String GATEWAY_NOTIFY_TYPE_FRONT = "1";
    /** 网关通知类型：2 后台 */
    public static final String GATEWAY_NOTIFY_TYPE_SERVE = "2";

    /** 支付密码状态正常 */
    public static final String PAY_PASSWORD_NORMAL = "NORMAL";

    /** 支付密码当日锁定状态 */
    public static final String PAY_PASSWORD_LOCK_ONEDAY = "LOCK_ONEDAY";

    /** 支付密永久锁定码状态 */
    public static final String PAY_PASSWORD_LOCK_PERMANENT = "LOCK_PERMANENT";

    /** 交易最小金额. */
    public static BigDecimal bMin = new BigDecimal("0.01");
    /** 交易最大金额. */
    public static BigDecimal bMax = new BigDecimal("9999999999.99");
    /** 数据库金额字段最大金额. */
    public static BigDecimal bDBMax = new BigDecimal("999999999999999999999.99");
    
    /** 国付宝个人客户类型 */
    public static String CUST_TYPE_PERSON = "1";
    /** 国付宝企业客户类型 */
    public static String CUST_TYPE_CORP = "2";
    
    /** 国付宝网关应用模块编号 1. */
    public static String APP_ID_GATEWAY = "1";
    /** 国付宝用户应用模块编号 2. */
    public static String APP_ID_PORTAL = "2";
    /** 国付宝控制台应用模块编号 3. */
    public static String APP_ID_CONSOLE = "3";

    /*******************************方案缓存渠道名称设置  开始***********************************/
    public static String CACHE_CHANNEL_SOLUTION = "solution";

    public static String CACHE_CHANNEL_AUTH = "auth";

    /*******************************方案缓存渠道名称设置  结束***********************************/

    /**
     * 成功
     */
    public static final String SUCCESS = "success";

    /** 商财通用户角色 **/
    public static final String ROLE_CUST_CORP_FUND = "role_cust_corp_fund";


    /** 活期宝用户角色 **/
    public static final String ROLE_CUST_PERS_FUND = "role_cust_pers_fund";
}
